/**
 * 1212. 最大连续1的个数
 * 给定一个二进制数组，找出该数组中最大连续1的个数。
 * https://www.lintcode.com/problem/max-consecutive-ones/description
 *
 * 样例
 * Example 1:
 * Input: [1,1,0,1,1,1]
 * Output: 3
 * Explanation: The first two digits or the last three digits are consecutive 1s.
 * The maximum number of consecutive 1s is 3.
 *
 * Example 2:
 * Input: [1]
 * Output: 1
 *
 * 注意事项
 * The input array will only contain 0 and 1.
 * The length of input array is a positive integer and will not exceed 10,000
 *
 * @author jeymingwu
 * @date 2019/9/30 15:01
 */
public class L1212_Max_Consecutive_Ones_1212 {

    /**
     * @param nums: a binary array
     * @return:  the maximum number of consecutive 1s
     */
    public int findMaxConsecutiveOnes(int[] nums) {
        // Write your code hereion
        int max = 0;
        int tmp = 0;
        for (int i = 0; i < nums.length; ++i) {
            if (nums[i] == 1) {
                ++tmp;
            }
            if (nums[i] == 0 || i == nums.length - 1){
                if (max < tmp) {
                    max = tmp;
                }
                tmp = 0;
            }
        }
        return max;
    }

    public static void main(String[] args) {
        L1212_Max_Consecutive_Ones_1212 max = new L1212_Max_Consecutive_Ones_1212();
        int[] nums = {1, 1, 0, 1, 1, 1};
        System.out.println(max.findMaxConsecutiveOnes(nums));
    }
}
